home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 4 / FM Towns Free Software Collection 4 - Disc 1.iso / heat / heat.cfg < prev    next >
Text File  |  1991-10-18  |  12KB  |  496 lines

  1. /*********************************************************************
  2. /*
  3. /*                  system “Pride”
  4. /*        Super Thechnical Multi Text Sound Tool
  5. /*                      HEat                             version.1.01e
  6. /*
  7. /*          (c) Copyright 1990,1991 -- TaroPYON
  8. /*
  9. /*
  10. /*    メイン・コンフィグ・ファイル    "HEat.cfg"
  11. /*
  12. /*    TABSIZE = 4;
  13. /*
  14.  
  15. /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  16. /*    システム設定マクロ
  17. /*
  18.     ON = 1
  19.     OFF = 0
  20.     TRUE = -1
  21.     FALSE = 0
  22.  
  23. /*------------------------------------------------------------------
  24. /*    カラーコード設定
  25. /*------------------------------------------------------------------
  26.     C_BLACK        = 0
  27.     C_BLUE        = 1
  28.     C_RED        = 2
  29.     C_MAGENTA    = 3
  30.     C_GREEN        = 4
  31.     C_CYAN        = 5
  32.     C_YELLOW    = 6
  33.     C_WHITE        = 7
  34.     C_HBLACK    = 8
  35.     C_HBLUE        = 9
  36.     C_HRED        = 10
  37.     C_HMAGENTA    = 11
  38.     C_HGREEN    = 12
  39.     C_HCYAN        = 13
  40.     C_HYELLOW    = 14
  41.     C_HWHITE    = 15
  42.  
  43.     C_MBLACK    = 1
  44.     C_THROUGH    = 0
  45.  
  46.     PSET    = 0
  47.     PRESET    = 1
  48.     OR        = 2
  49.     AND        = 3
  50.     XOR        = 4
  51.     NOT        = 5
  52.     OPAQUE    = 9
  53.  
  54.     SCXMAX = 640
  55.     SCYMAX = 480
  56.  
  57.     EUP_CHK = 0
  58.  
  59. /*********************************************************************
  60. /*    起動時オプション
  61. /*    【復帰】    OPT にオプション文字列を設定して return (0) で戻る
  62. /*
  63. option {
  64.     mosget("sw","x","y")                /* マウス状態の取得
  65.     if ( sw = 1 )                        /* 左ボタンが押されている
  66.     {    OPT = "-q"
  67.         return    (0)
  68.     } else if ( sw = 3 )                /* 両方のボタンが押されている
  69.     {    OPT = "-qA"
  70.         return    (0)
  71.     }
  72.     return    (-1)                        /* オプション指定なし
  73. }
  74.  
  75.  
  76. /*******************************************************************
  77. /*    startup : 起動時(マクロ初期化 時)に実行される
  78. /*
  79. /*    【入力】ERR         パラメータエラー内容
  80. /*            HLP ! 0        ヘルプ・オプション指定あり
  81. /*            FILE        編集ファイル
  82. /*
  83. /*    【復帰】return = 0    起動
  84. /*            return ! 0    終了,TownsMENU にもどる
  85. /*
  86. /*******************************************************************
  87. startup {
  88.  
  89.     if ( STARTUP_ONLY = 0 )
  90.     {    STARTUP_ONLY = 1;
  91.         /************************************************************/
  92.         /* 半角の「¥」が「\」(バック・スラッシュ)になるが気に入らない方は下の */
  93.         /* マクロを実行しましょう。                                    */
  94.         /************************************************************/
  95. #        font_set(92,0,16,"00 41 41 22 22 14 7F 08 08 7F 08 08 08 08 00 00")
  96. #        font_set(92,0, 8,"22 22 14 3E 08 3E 08 00")
  97. #        /* ユーザーフォントは本当はデザインし直したほうがいい…。
  98. #        font_set(92,1,16,"00 41 41 22 22 14 7F 08 08 7F 08 08 08 08 00 00")
  99. #        font_set(92,1, 8,"22 22 14 3E 08 3E 08 00")
  100.         if ( HLP ! 0 )                    /* ヘルプオプションの指定あり
  101.         {    HELP_startup()
  102.             return    (-1)
  103.         } else if ( ERR ! "" )            /* パラメータエラー
  104.         {    PARA_err()
  105.             if ( VAL ! 0 ) { return    (-1) }    /* exit    */
  106.         }
  107.     }
  108.     cfg_load("console.cfg")        /* コンソール関係コンフィグロード
  109.     cfg_load("keymacro.cfg")    /* キー設定マクロ・コンフィグ・ロード
  110.     cfg_load("metakey.cfg")        /* メタキー設定ファイルロード
  111.     cfg_load("term.cfg")        /* 通信関係コンフィグ・ロード
  112.     cfg_load("heplay.cfg")        /* HEPLAY用コンフィグ・ロード
  113.  
  114.     if ( FIRST_TIME = 0 )
  115.     {    /* 初回のみ実行    */
  116.         METAKEY_set()                    /* メタキー設定
  117.         FIRST_TIME = 1;
  118.         CD_NO = 1;                        /* CD 演奏開始曲番号
  119.         CD_VOL = 127;                    /* CD ボリューム
  120.         cd_vol(CD_VOL)                    /* CD ボリューム設定
  121.         CD_MODE = 0;                    /* CD 演奏モード
  122.         cd_mode(CD_MODE)
  123. #        cfg_load("bgmset1.cfg");main()
  124.         set_blackout(_BO_TIME,"")        /* ブラックアウト・タイムの設定
  125.     }
  126.     return    (0)
  127. }
  128.  
  129. /*********************************************************************
  130. /*
  131. /*    起動時オプションによってエラーが発生した場合実行される
  132. /*
  133. /*    【入力】    ERR            エラーのあったパラメータ
  134. /*    【復帰】    return = 0    エラーは無視して続行
  135. /*                return ! 0    終了する
  136. /*
  137. PARA_err {
  138.     menu_yes_no( 112, 220, C_RED, " \(ERR):\x0Aパラメータの指定に誤りがありますが起動しますか? ")
  139.     if ( VAL > 0 )
  140.     {    return    (0)                        /* 続行    */
  141.     } else
  142.     {    return    (-1)                    /* 終了    */
  143.     }
  144. }
  145.  
  146. /*********************************************************************
  147. /*    起動時オプションに ? または -? が設定された場合に実行される
  148. /*
  149. HELP_startup {
  150.     w_init()
  151.     wind_open2("スタートアップ へるぷ チャン")
  152.     echo(" パラメータに '?' か'-?'が指定されたよ。\n\n")
  153.     echo(" オプション・スイッチはたくさんあるから書き切れないの…\n")
  154.     echo(" このメッセージは ファイル HEat.cfg に書かれてい\n")
  155.     echo("るから、\n\n")
  156.     echo(" 忘れっぽいひとは自分でメモっててネ♪\n")
  157.     wait(20)
  158.     echo("\n そんじゃ、ばいば~い");
  159.     wait(5)
  160.     wind_close()
  161. }
  162.  
  163. /*******************************************************************
  164. /*    起動時に編集するファイルがない場合に実行される
  165. /*
  166. /*    【入力】    なし
  167. /*    【復帰】    FILE    ファイル名
  168. /*
  169. DUMY_set {
  170.     file_select("FILE","編集ファイル",-1, "", "*.*",0)
  171.     if ( FILE = "" )
  172.     {    FILE = "dummy.mml"                /* ダミーファイル名
  173.     }
  174. }
  175.  
  176.  
  177. /*******************************************************************
  178. /*    終了時に実行される
  179. /*
  180. /*    【復帰】    終了時のエラーレベル
  181. /*******************************************************************
  182. ending {
  183.     return    (0)
  184. }
  185.  
  186. /*******************************************************************
  187. /*    CDプレイヤ
  188. /*******************************************************************
  189. CD_menu {
  190.  
  191.     mosget("sw","x","y")
  192.     while ( 0 )
  193.     {    
  194.         if ( CD_MODE = 1 )
  195.         {    TMP = "repeat All";
  196.         } else if ( CD_MODE = 2 )
  197.         {    TMP = "repeat One";
  198.         } else if ( CD_MODE = 3 )
  199.         {    TMP = "Shuffle";
  200.         } else
  201.         {    CD_MODE = 0;
  202.             TMP = "OFF";
  203.         }
  204.         menu2_select(x,y,"CD PLAYER MENU",
  205.             "B: Back ",
  206.             "P: Play ",
  207.             "N: Next ",
  208.             "S: Stop ",
  209.             "",
  210.             "R: Repeat [\(TMP)] ",
  211.             "V: Volume [\(CD_VOL)] "
  212.         )
  213.         if ( VAL = 0 )
  214.         {    cd_back()                    /* [BACK]
  215.             cd_vol(CD_VOL)
  216.         } else if ( VAL = 1 )            /* [PLAY]
  217.         {    menu_input("CD_NO",8,x,y,C_CYAN,"何曲め?:")
  218.             if ( VAL = 0 )
  219.             {    cd_play(CD_NO)
  220.                 cd_vol(CD_VOL)
  221.             }
  222.         } else if ( VAL = 2 )
  223.         {    cd_next()                    /* [NEXT]
  224.             cd_vol(CD_VOL)
  225.         } else if ( VAL = 3 )
  226.         {    cd_stop()                    /* [STOP]
  227.         } else if ( VAL = 5 )
  228.         {    inc(CD_MODE)
  229.             if ( CD_MODE > 3 )
  230.             {    CD_MODE = 0;
  231.             }
  232.             cd_mode(CD_MODE)
  233.         } else if ( VAL = 6 )
  234.         {                                /* [Volum]
  235.             menu_input("CD_VOL", 4, x, y, C_CYAN, " CD ボリューム:1~127")
  236.             if ( CD_VOL > 0 )
  237.             {    if ( CD_VOL < 128 )
  238.                 {    cd_vol(CD_VOL)
  239.                 }
  240.             }
  241.         } else
  242.         {    return
  243.         }
  244.     }
  245. }
  246.  
  247.  
  248. /*******************************************************************
  249. /*
  250. /*    もどり値のコマンドファンクションが実行される
  251. /*
  252. /*    ※ 変なコマンドを実行すると飛ぶので注意!!!
  253. /*
  254.  
  255.     MARK      =  13
  256.     FILE_LIST =  72
  257.     VIEW_FILE =  76
  258.     TEXT_EDIT =  77
  259.     SAVE_ALL  = 102
  260.     HEAT_EXIT = 109
  261.     MS_DOS    = 162
  262.     CONS_LOG  = 164
  263.     TERMINAL  = 801
  264.     BACK_LOG  = 804
  265.  
  266. HELPER {
  267.     sys_getmode("MODE")
  268.     mosget("sw","x","y")
  269.     menu2_select(x,y,"何がしたいんだ???",
  270.         "1: 新しいファイルを編集したい ",
  271.         "2: 通信したい ",
  272.         "3: 通信ログをみたい ",
  273.         "4: MS-DOSコマンドを実行したい ",
  274.         "9: HEatを終了したい"
  275.     )
  276.     CMD = VAL;
  277.     inc(CMD)
  278.  
  279.     if ( CMD = 1 )
  280.     {    /* [PF1] N    */
  281.         key("\\k5D00N")
  282.         return    (TEXT_EDIT)
  283.     } else if ( CMD = 2 )
  284.     {    return    (TERMINAL)
  285.     } else if ( CMD = 3 )
  286.     {    return    (BACK_LOG)
  287.     } else if ( CMD = 4 )
  288.     {    return    (MS_DOS)
  289.     } else if ( CMD = 5 )
  290.     {    /* EXIT    */
  291.         menu_yes_no(x,y,C_CYAN,"編集中のテキストは保存しますか?")
  292.         if ( VAL > 0 )
  293.         {    return    (SAVE_ALL)    /* SAVE ALL    */
  294.         } else
  295.         {    return    (HEAT_EXIT)    /* 終了    */
  296.         }
  297.     }
  298. }
  299.  
  300. /*********************************************************************
  301. /*    <SYSTEM>メニュー
  302. /*
  303. SYSTEM {
  304.     w_init()
  305.     wind_open2("SYSTEM メニュー だよン♪")
  306.     echo("\n    といいながら、\n")
  307.     echo(  "    それらしいことは何もできましぇん…\n")
  308.     wait(10)
  309.     wind_close()
  310. }
  311.  
  312.  
  313. PUT_TOWNS {
  314.     D00 = "00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
  315.     D01 = "00 3E 00 7C 0C 01 80 00 03 FF F0 7C 18 18 19 F0"
  316.     D02 = "18 7F F0 3E 01 FF 0C 01 80 00 03 FF F1 FF 18 18"
  317.     D03 = "19 F8 18 FF F0 3E 03 83 8C 01 80 00 00 0C 03 83"
  318.     D04 = "98 18 19 98 19 C0 00 3E 07 01 CC 01 80 00 00 0C"
  319.     D05 = "07 01 CC 3C 31 9C 19 80 00 3E 06 00 CD E1 80 00"
  320.     D06 = "00 0C 06 00 CC 3C 31 8C 19 C0 00 3E 0C 00 6F F1"
  321.     D07 = "80 00 00 0C 0C 00 6C 3C 31 8E 18 FF C0 3E 0C 00"
  322.     D08 = "6E 19 80 00 00 0C 0C 00 66 66 61 86 18 7F F0 3E"
  323.     D09 = "00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 00"
  324.     D0A = "00 3E 0C 00 6C 19 9F F7 87 CC 0C 00 66 66 61 83"
  325.     D0B = "18 00 18 3E 0C 00 6C 19 8E 33 C7 8C 0C 00 63 C3"
  326.     D0C = "C1 83 98 00 18 3E 06 00 CC 19 8E 33 CB 8C 06 00"
  327.     D0D = "C3 C3 C1 81 98 00 18 3E 07 01 CC 18 0F 83 6B 8C"
  328.     D0E = "07 01 C3 C3 C1 81 D8 00 18 3E 03 83 8C 19 8E 03"
  329.     D0F = "7B 8C 03 83 81 81 81 80 D8 00 30 3E 01 FF 0C 19"
  330.     D10 = "8E 03 33 8C 01 FF 01 81 81 80 F9 FF F0 3E 00 7E"
  331.     D11 = "0C 19 9F 07 B7 CC 00 7C 01 81 81 80 79 FF C0 3E"
  332.     D0 = "\(D00) \(D01) \(D02) \(D03) \(D04) \(D05) \(D06) \(D07) \(D08)"
  333.     D1 = "\(D09) \(D0A) \(D0B) \(D0C) \(D0D) \(D0E) \(D0F) \(D10) \(D11)"
  334.  
  335.     tmp_x1 = x;
  336.     tmp_y1 = y;
  337.     expr("tmp_x2","\(x)+137")
  338.     expr("tmp_y2","\(y)+7")
  339.     graph("putblk",tmp_x1,tmp_y1,tmp_x2,tmp_y2,PSET,C_MBLACK,D0)
  340.     add("tmp_y1",8)
  341.     add("tmp_y2",8)
  342.     graph("putblk",tmp_x1,tmp_y1,tmp_x2,tmp_y2,PSET,C_MBLACK,D1)
  343. }
  344.  
  345. /*********************************************************************
  346. /*    <HELP>メニュー
  347. /*
  348. HELP {
  349.     w_init()
  350.     wind_open2("へるぷ メニュー よン♪")
  351.     x = 80;
  352.     y = 80;
  353.     PUT_TOWNS()
  354.     add("x",138)
  355.     graph("symbol",x,y, 8,16, OPAQUE,C_MBLACK,C_HWHITE, 0,0,0,0, "を見てね。")
  356.  
  357.     wait(10)
  358.     wind_close()
  359.     /*    う~ん,HELPになっていない…
  360. }
  361.  
  362. /*********************************************************************
  363. /*    プリンタ初期化時に実行される
  364. /*
  365. PRT_start {
  366.     return    (0);
  367. }
  368.  
  369. PRT_end {
  370. }
  371.  
  372.  
  373. /*********************************************************************
  374. /*
  375. /*    <設定メニュー#2>
  376. /*
  377. KEYMACRO_00 {
  378.     w_init()
  379.  
  380.     mosget("sw","x","y")
  381.     while ( 0 )
  382.     {    if ( _HEPLAY_TYPE =  0 )
  383.         {    TMP = "デフォルト"
  384.         } else if ( _HEPLAY_TYPE = 4 )
  385.         {    TMP = "カラオケ用"
  386.         } else
  387.         {    TMP = _HEPLAY_TYPE;
  388.         }
  389.         if ( TM_SEC = 0 )
  390.         {    TMP_TM = "OFF"
  391.         } else
  392.         {    TMP_TM = "\(TM_SEC) sec"
  393.         }
  394.         if ( _SCROLL_DIR = 0 )
  395.         {    _SCROLL_DIR = 1;
  396.             TMP_SR = "Normal"
  397.         } else if ( _SCROLL_DIR < 0 )
  398.         {    TMP_SR = "Reverse"
  399.             _SCROLL_DIR = -1;
  400.         } else
  401.         {    TMP_SR = "Normal";
  402.             _SCROLL_DIR = 1;
  403.         }
  404.         menu2_select(x,y, "<設定メニュー2>",
  405.             "H:HEPLAY   High-EUP Player タイプ      [\(TMP)]",
  406.             "B:BlackOut ブラックアウト・タイムの設定 [\(_BO_TIME) min]"
  407.             "T:Timer    タイマー設定                [\(TMP_TM)]",
  408.             "S:Scroll   マウス・スクロール方向の設定 [\(TMP_SR)]"
  409.          )
  410.         if ( VAL < 0 ) { return (-1) }
  411.         if ( VAL = 0 )
  412.         {    /* HEPLAY    */
  413.             inc(_HEPLAY_TYPE)
  414.             if ( _HEPLAY_TYPE > 4 )
  415.             {    _HEPLAY_TYPE = 0;
  416.             }
  417.         } else if ( VAL = 1 )
  418.         {    /* ブラックアウト    */
  419.             TMP = _BO_TIME;
  420.             menu_input("TMP",8,x,y,C_CYAN,"ブラックアウト・タイムの設定(1~60分)")
  421.             if ( VAL < 0 )
  422.             {
  423.             } else
  424.             {    expr("_BO_TIME","\(TMP)");
  425.                 if ( _BO_TIME < 0 )
  426.                 {    _BO_TIME = 0;
  427.                 } else if ( _BO_TIME > 60 )
  428.                 {    _BO_TIME = 60;
  429.                 }
  430.                 if ( _BO_TIME = 0 )
  431.                 {    RET = "\tブラックアウトを解除します。"
  432.                 } else
  433.                 {    RET = "\t\(_BO_TIME) 分間キー入力、マウス入力がなければ、\n\n\t画面を消去します。"
  434.                 }
  435.                 echo("\n\n\(RET)\n")
  436.                 wait(5)
  437.                 wind_close()
  438.                 set_blackout(_BO_TIME,"")
  439.             }
  440.         } else if ( VAL = 2 )
  441.         {    /* タイマー設定    */
  442.             TMP = TM_SEC;
  443.             menu_input("TMP",8,x,y,C_CYAN,"タイマーの設定(10~600秒)")
  444.             if ( VAL < 0 )
  445.             {    
  446.             } else
  447.             {    expr("TM_SEC","\(TMP)");
  448.                 if ( TM_SEC < 0 )
  449.                 {    TM_SEC = 0;
  450.                 } else if ( TM_SEC > 600 )
  451.                 {    TM_SEC = 600;
  452.                 }
  453.                 if ( TM_SEC = 0 )
  454.                 {    RET = "\tタイマーを解除します。"
  455.                 } else
  456.                 {    RET = "\t\(TM_SEC) 秒後にブザーを鳴らします。"
  457.                 }
  458.                 echo("\n\n\(RET)\n")
  459.                 wait(5)
  460.                 wind_close()
  461.                 set_timer( TM_SEC,"TIMER_func")
  462.             }
  463.         } else if ( VAL = 3 )
  464.         {    /* マウススクロール方向    */
  465.             if ( _SCROLL_DIR > 0 )
  466.             {    _SCROLL_DIR = -1;
  467.             } else
  468.             {    _SCROLL_DIR = 1;
  469.             }
  470.         }
  471.     }
  472. }
  473.  
  474.  
  475. /*********************************************************************
  476. /*    タイマー実行部
  477. /*
  478. TIMER_func {
  479.     while ( 0 )
  480.     {    syslin_puts(C_YELLOW,C_MBLACK,"    <<<<<<<<<< TIMER >>>>>>>>>>")
  481.         beep()
  482.         wait(1)
  483.         mosget("tm_sw","x","y")
  484.         if ( tm_sw ! 0 )
  485.         {    return
  486.         }
  487.     }
  488.     TM_SEC = 0;
  489. }
  490.  
  491. w_init {
  492.     wind_close()
  493.     wind_init()
  494. }
  495.  
  496.